home *** CD-ROM | disk | FTP | other *** search
/ Network CD 1 / Network CD.iso / fredfish / 901-910 / ff907 / cyberpager / source / source.lha / library / GSTmaker.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-06-17  |  3.4 KB  |  131 lines

  1. #include <exec/types.h>
  2. #include <exec/lists.h>
  3. #include <exec/nodes.h>
  4. #include <exec/memory.h>
  5. #include <exec/ports.h>
  6. #include <exec/tasks.h>
  7. #include <exec/alerts.h>
  8. #include <exec/libraries.h>
  9. #include <exec/semaphores.h>
  10. #include <exec/execbase.h>
  11. #include <dos/dos.h>
  12. #include <dos/dosextens.h>
  13. #include <dos/dostags.h>
  14. #include <dos/datetime.h>
  15. #include <dos/rdargs.h>
  16. #include <utility/tagitem.h>
  17. #include <utility/hooks.h>
  18.  
  19. #include <clib/exec_protos.h>
  20. extern struct ExecBase *SysBase;
  21.  
  22. #include <pragmas/exec_libcall_lib.h>
  23.  
  24. #include <clib/dos_protos.h>
  25. extern struct DosLibrary *DOSBase;
  26.  
  27. #include <pragmas/dos_lib.h>
  28. #pragma tagcall DOSBase FPrintf 162 32103
  29.  
  30. #include <clib/utility_protos.h>
  31. extern struct Library *UtilityBase;
  32.  
  33. #include <pragmas/utility_lib.h>
  34.  
  35. #include <libraries/OwnDevUnit.h>
  36.  
  37. #define USE_BUILTIN_MATH TRUE
  38. #include <stdio.h>
  39. #include <string.h>
  40. #include <stdlib.h>
  41. #include <stddef.h>
  42. #include <stdarg.h>
  43. #include <ctype.h>
  44. #include <math.h>
  45. #include <clib/alib_protos.h>
  46. #include <clib/pools_protos.h>
  47.  
  48. LONG __stdargs kprintf(STRPTR fmt,...);
  49.  
  50. typedef struct {
  51.     struct MinNode ph_Node;
  52.     struct SignalSemaphore ph_Sema;
  53.     struct List ph_LockList;
  54.     LONG ph_LogLevel;
  55.     LONG ph_LogRetries;
  56.     STRPTR ph_LogProgram;
  57.     STRPTR ph_LogService;
  58.     STRPTR ph_LogWho;
  59.     struct List ph_ConfigList;
  60.     struct MinList ph_ServiceList;
  61.     struct MinList ph_AliasList;
  62. } PagerHandle_t;
  63.  
  64. typedef struct {
  65.     STRPTR svc_Name;
  66.     STRPTR svc_Phone;
  67.     ULONG svc_BaudRate;
  68.     ULONG svc_MaxPageLen;
  69.     BOOL svc_MultiBlock;
  70. } PagerService_t;
  71.  
  72. typedef struct {
  73.     struct MinNode psvc_Node;
  74.     PagerHandle_t *psvc_Handle;
  75.     ULONG psvc_UseCount;
  76.     PagerService_t psvc_Service;
  77. } PrivatePagerService_t;
  78.  
  79. typedef struct {
  80.     STRPTR als_Name;
  81.     STRPTR als_Service;
  82.     STRPTR als_PIN;
  83.     ULONG als_MaxMessageLen;
  84.     ULONG als_MaxPageLen;    
  85. } PagerAlias_t;
  86.  
  87. typedef struct {
  88.     struct MinNode pals_Node;
  89.     PagerHandle_t *pals_Handle;
  90.     ULONG pals_UseCount;
  91.     PagerAlias_t pals_Alias;
  92. } PrivatePagerAlias_t;
  93.  
  94. typedef struct {
  95.     struct Node ce_Node;
  96.     PagerHandle_t *ce_Handle;
  97.     ULONG ce_UseCount;
  98.     UBYTE ce_Data[1];
  99. } ConfigEntry_t;
  100.  
  101. /* global variables */
  102.  
  103. extern struct SignalSemaphore HandleListSema;
  104. extern struct MinList HandleList;
  105.  
  106. extern struct SignalSemaphore poolSema;
  107. extern APTR pool;
  108.  
  109. /* function prototypes */
  110.  
  111. void ULog(PagerHandle_t *ph, LONG level, STRPTR fmt, ...);
  112.  
  113. BOOL __saveds __asm LockFile(register __a0 PagerHandle_t *ph, register __a1 STRPTR fileName);
  114. void __saveds __asm UnLockFile(register __a0 PagerHandle_t *ph, register __a1 STRPTR fileName);
  115. void __saveds __asm UnLockFiles(register __a0 PagerHandle_t *ph);
  116.  
  117. void __saveds __asm FreePagerService(register __a0 PagerService_t *svc);
  118.  
  119. void __saveds __asm FreePagerAlias(register __a0 PagerAlias_t *als);
  120.  
  121. STRPTR __saveds __asm FindPagerConfig(register __a0 PagerHandle_t *ph, register __a1 STRPTR configEntryName);
  122. STRPTR __saveds __asm FindPagerConfigDefault(register __a0 PagerHandle_t *ph, register __a1 STRPTR configEntryName, register __a2 STRPTR defValue);
  123. void __saveds __asm FreePagerConfig(register __a0 STRPTR configEntry);
  124. BOOL __saveds __asm PagerConfigYesNo(register __a0 STRPTR configEntry);
  125.  
  126. LONG __saveds __asm GetSequenceNumber(register __a0 PagerHandle_t *ph, register __d0 UWORD increment);
  127. STRPTR __saveds __asm SequenceToName(register __a0 STRPTR buffer, register __d0 LONG sequenceNumber);
  128.  
  129. STRPTR __saveds __asm NameInSpool(register __a0 PagerHandle_t *ph, register __a1 STRPTR name);
  130. void __saveds __asm FreeNameInSpool(register __a0 STRPTR name);
  131.